/* ==================================================================   
 * Created [2009-4-27 下午11:32:55] by Jon.King 
 * ==================================================================  
 * TSS 
 * ================================================================== 
 * mailTo:jinpujun@hotmail.com
 * Copyright (c) Jon.King, 2009-2012 
 * ================================================================== 
*/

package com.jinhe.tss.component.recycle;

/**
 * <p> Recycleable.java </p>
 * <p>
 * 回收站信息接口。
 * 所有需要实现回收站机制的实体类都需要继承本接口。
 * </p>
 */
public interface Recycleable {
	
	/**
     * 获取实体ID
	 * @return
	 */
	Long getId();
    
    /**
     * 获取实体名称
     * @return
     */
    String getName();
	
	/**
     * 获取该实体在回收站中的回收记录ID
	 * @return
	 */
	Long getRecycleId();
	
   /**
     * 给打上删除标记的实体设置回收记录
     * @param recycleId
     */
    void setRecycleId(Long recycleId);
	
	/**
     * 获取删除标记，1：删除 0：未删除
	 * @return
	 */
	Integer getDeleted();
	
	/**
     * 打上删除标记
	 * @param deleted
	 */
	void setDeleted(Integer deleted);
}
